package com.guoxue.domain;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.InputStream;
import java.io.Serializable;
import java.sql.Blob;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import org.hibernate.annotations.GenericGenerator;

/**
 * 由工具生成的java类,手工修改无效!
 * 
 * 
 */
@Entity
@Table(name = "planConfigVo")
public class PlanConfigVo implements Cloneable, Serializable {
	// /////////////////////////////////////////////////////////////////////////////
	// --->字段定义:
	// /////////////////////////////////////////////////////////////////////////////
	/**
	 * 起始句子ID
	 */
	private int beginWordId = 0;

	/**
	 * 读的编数
	 */
	private int count = 0;

	/**
	 * 结束句子ID
	 */
	private int endWordId = 0;

	/**
	 * 正常奖经验
	 */
	private int exp = 0;

	/**
	 * 首次奖励经验
	 */
	private int firstExp = 0;

	/**
	 * 首次奖励勋章个数
	 */
	private int firstMedal = 0;

	/**
	 * 正常奖励勋章个数
	 */
	private int medal = 0;

	/**
	 * 计划编号
	 */
	@Id
	private int planId;

	/**
	 * 计划名称
	 */
	private String planName = "";

	/**
	 * 计划标题
	 */
	private String planTitle = "";

	/**
	 * 计划模式
	 */
	private String planType = "";

	/**
	 * 记录状态,0表示正常,-0x10表示已删除
	 */
	private int sysflag = 0;

	// /////////////////////////////////////////////////////////////////////////////
	// --->getter and setter:
	// /////////////////////////////////////////////////////////////////////////////
	/**
	 * 起始句子ID
	 */
	public int getBeginWordId() {
		return this.beginWordId;
	}

	/**
	 * 起始句子ID
	 */
	public void setBeginWordId(int value_new_) {
		this.beginWordId = value_new_;
	}

	/**
	 * 读的编数
	 */
	public int getCount() {
		return this.count;
	}

	/**
	 * 读的编数
	 */
	public void setCount(int value_new_) {
		this.count = value_new_;
	}

	/**
	 * 结束句子ID
	 */
	public int getEndWordId() {
		return this.endWordId;
	}

	/**
	 * 结束句子ID
	 */
	public void setEndWordId(int value_new_) {
		this.endWordId = value_new_;
	}

	/**
	 * 正常奖经验
	 */
	public int getExp() {
		return this.exp;
	}

	/**
	 * 正常奖经验
	 */
	public void setExp(int value_new_) {
		this.exp = value_new_;
	}

	/**
	 * 首次奖励经验
	 */
	public int getFirstExp() {
		return this.firstExp;
	}

	/**
	 * 首次奖励经验
	 */
	public void setFirstExp(int value_new_) {
		this.firstExp = value_new_;
	}

	/**
	 * 首次奖励勋章个数
	 */
	public int getFirstMedal() {
		return this.firstMedal;
	}

	/**
	 * 首次奖励勋章个数
	 */
	public void setFirstMedal(int value_new_) {
		this.firstMedal = value_new_;
	}

	/**
	 * 正常奖励勋章个数
	 */
	public int getMedal() {
		return this.medal;
	}

	/**
	 * 正常奖励勋章个数
	 */
	public void setMedal(int value_new_) {
		this.medal = value_new_;
	}

	/**
	 * 计划编号
	 */
	public int getPlanId() {
		return this.planId;
	}

	/**
	 * 计划编号
	 */
	public void setPlanId(int value_new_) {
		this.planId = value_new_;
	}

	/**
	 * 计划名称
	 */
	public String getPlanName() {
		return this.planName;
	}

	/**
	 * 计划名称
	 */
	public void setPlanName(String value_new_) {
		this.planName = value_new_;
	}

	/**
	 * 计划标题
	 */
	public String getPlanTitle() {
		return this.planTitle;
	}

	/**
	 * 计划标题
	 */
	public void setPlanTitle(String value_new_) {
		this.planTitle = value_new_;
	}

	/**
	 * 计划模式
	 */
	public String getPlanType() {
		return this.planType;
	}

	/**
	 * 计划模式
	 */
	public void setPlanType(String value_new_) {
		this.planType = value_new_;
	}

	/**
	 * 记录状态,0表示正常,-0x10表示已删除
	 */
	public int getSysflag() {
		return this.sysflag;
	}

	/**
	 * 记录状态,0表示正常,-0x10表示已删除
	 */
	public void setSysflag(int value_new_) {
		this.sysflag = value_new_;
	}

	// /////////////////////////////////////////////////////////////////////////////
	// --->流读写方法和打印方法:
	// /////////////////////////////////////////////////////////////////////////////
	@Override
	public String toString() {
		final StringBuilder sb = new StringBuilder();
		final String info;

		sb.append(",beginWordId=" + this.beginWordId);
		sb.append(",count=" + this.count);
		sb.append(",endWordId=" + this.endWordId);
		sb.append(",exp=" + this.exp);
		sb.append(",firstExp=" + this.firstExp);
		sb.append(",firstMedal=" + this.firstMedal);
		sb.append(",medal=" + this.medal);
		sb.append(",planId=" + this.planId);
		sb.append(",planName=" + this.planName);
		sb.append(",planTitle=" + this.planTitle);
		sb.append(",planType=" + this.planType);
		sb.append(",sysflag=" + this.sysflag);

		info = sb.toString();
		return info;
	}

	// /////////////////////////////////////////////////////////////////////////////
	// --->clone and copy:
	// /////////////////////////////////////////////////////////////////////////////
	@Override
	public Object clone() throws CloneNotSupportedException {
		return (PlanConfigVo) super.clone();
	}

	/**
	 * 令当前对象(this)成为指定对象(src)的拷贝
	 * 对简单数据类型的数组,进行深层复制
	 * 对dataMap数据,进行dataMap的整体复制
	 * @param src
	 */
	public void copyOf(PlanConfigVo src){
		this.beginWordId = src.beginWordId;
		this.count = src.count;
		this.endWordId = src.endWordId;
		this.exp = src.exp;
		this.firstExp = src.firstExp;
		this.firstMedal = src.firstMedal;
		this.medal = src.medal;
		this.planId = src.planId;
		this.planName = src.planName;
		this.planTitle = src.planTitle;
		this.planType = src.planType;
		this.sysflag = src.sysflag;
	}

}
